<html><body>
<style>

body, h1, h2, h3, div, span, p, pre, a {
  margin: 0;
  padding: 0;
  border: 0;
  font-weight: inherit;
  font-style: inherit;
  font-size: 100%;
  font-family: inherit;
  vertical-align: baseline;
}

body {
  font-size: 13px;
  padding: 1em;
}

h1 {
  font-size: 26px;
  margin-bottom: 1em;
}

h2 {
  font-size: 24px;
  margin-bottom: 1em;
}

h3 {
  font-size: 20px;
  margin-bottom: 1em;
  margin-top: 1em;
}

pre, code {
  line-height: 1.5;
  font-family: Monaco, 'DejaVu Sans Mono', 'Bitstream Vera Sans Mono', 'Lucida Console', monospace;
}

pre {
  margin-top: 0.5em;
}

h1, h2, h3, p {
  font-family: Arial, sans serif;
}

h1, h2, h3 {
  border-bottom: solid #CCC 1px;
}

.toc_element {
  margin-top: 0.5em;
}

.firstline {
  margin-left: 2 em;
}

.method  {
  margin-top: 1em;
  border: solid 1px #CCC;
  padding: 1em;
  background: #EEE;
}

.details {
  font-weight: bold;
  font-size: 14px;
}

</style>

<h1><a href="vmwareengine_v1.html">VMware Engine API</a> . <a href="vmwareengine_v1.projects.html">projects</a> . <a href="vmwareengine_v1.projects.locations.html">locations</a> . <a href="vmwareengine_v1.projects.locations.privateClouds.html">privateClouds</a> . <a href="vmwareengine_v1.projects.locations.privateClouds.upgrades.html">upgrades</a></h1>
<h2>Instance Methods</h2>
<p class="toc_element">
  <code><a href="#close">close()</a></code></p>
<p class="firstline">Close httplib2 connections.</p>
<p class="toc_element">
  <code><a href="#get">get(name, x__xgafv=None)</a></code></p>
<p class="firstline">Retrieves a private cloud `Upgrade` resource by its resource name.</p>
<p class="toc_element">
  <code><a href="#list">list(parent, filter=None, orderBy=None, pageSize=None, pageToken=None, x__xgafv=None)</a></code></p>
<p class="firstline">Lists past, ongoing and upcoming `Upgrades` for the given private cloud.</p>
<p class="toc_element">
  <code><a href="#list_next">list_next()</a></code></p>
<p class="firstline">Retrieves the next page of results.</p>
<p class="toc_element">
  <code><a href="#patch">patch(name, body=None, requestId=None, updateMask=None, x__xgafv=None)</a></code></p>
<p class="firstline">Update the private cloud `Upgrade` resource. Only `schedule` field can updated. The schedule can only be updated when the upgrade has not started and schedule edit window is open. Only fields specified in `update_mask` are considered.</p>
<h3>Method Details</h3>
<div class="method">
    <code class="details" id="close">close()</code>
  <pre>Close httplib2 connections.</pre>
</div>

<div class="method">
    <code class="details" id="get">get(name, x__xgafv=None)</code>
  <pre>Retrieves a private cloud `Upgrade` resource by its resource name.

Args:
  name: string, Required. The name of the `Upgrade` resource to be retrieved. Resource names are schemeless URIs that follow the conventions in https://cloud.google.com/apis/design/resource_names. For example: `projects/my-project/locations/us-west1-a/privateClouds/my-cloud/upgrades/my-upgrade` (required)
  x__xgafv: string, V1 error format.
    Allowed values
      1 - v1 error format
      2 - v2 error format

Returns:
  An object of the form:

    { # Describes Private cloud Upgrade.
  &quot;componentUpgrades&quot;: [ # Output only. Output Only. The list of component upgrades.
    { # Per component upgrade resource
      &quot;componentType&quot;: &quot;A String&quot;, # Output only. Type of component
      &quot;state&quot;: &quot;A String&quot;, # Output only. Component&#x27;s upgrade state.
    },
  ],
  &quot;createTime&quot;: &quot;A String&quot;, # Output only. Output Only. Creation time of this resource.
  &quot;description&quot;: &quot;A String&quot;, # Output only. Output Only. The description of the upgrade. This is used to provide additional information about the private cloud upgrade, such as the upgrade&#x27;s purpose, the changes included in the upgrade, or any other relevant information about the upgrade.
  &quot;endTime&quot;: &quot;A String&quot;, # Output only. Output Only. End time of the upgrade.
  &quot;estimatedDuration&quot;: &quot;A String&quot;, # Output only. Output Only. The estimated total duration of the upgrade. This information can be used to plan or schedule upgrades to minimize disruptions. Please note that the estimated duration is only an estimate. The actual upgrade duration may vary.
  &quot;etag&quot;: &quot;A String&quot;, # The etag for the upgrade resource. If this is provided on update, it must match the server&#x27;s etag.
  &quot;name&quot;: &quot;A String&quot;, # Output only. Identifier. The resource name of the private cloud `Upgrade`. Resource names are schemeless URIs that follow the conventions in https://cloud.google.com/apis/design/resource_names. For example: `projects/my-project/locations/us-west1-a/privateClouds/my-cloud/upgrades/my-upgrade`
  &quot;schedule&quot;: { # Schedule for the upgrade. # Schedule details for the upgrade.
    &quot;constraints&quot;: { # Constraints to be applied while editing a schedule. These constraints ensure that `Upgrade` specific requirements are met. # Output only. Output Only. Constraints applied to the schedule. These constraints should be applicable at the time of any rescheduling.
      &quot;disallowedIntervals&quot;: [ # Output only. Output Only. A list of intervals in which maintenance windows are not allowed. Any time window that overlaps with any of these intervals will be considered invalid.
        { # Represents a time interval, spanning across days of the week. Until local timezones are supported, this interval is in UTC.
          &quot;endDay&quot;: &quot;A String&quot;, # Output only. The day on which the interval ends. Can be same as start day.
          &quot;endTime&quot;: { # Represents a time of day. The date and time zone are either not significant or are specified elsewhere. An API may choose to allow leap seconds. Related types are google.type.Date and `google.protobuf.Timestamp`. # Output only. The time on the end day at which the interval ends.
            &quot;hours&quot;: 42, # Hours of a day in 24 hour format. Must be greater than or equal to 0 and typically must be less than or equal to 23. An API may choose to allow the value &quot;24:00:00&quot; for scenarios like business closing time.
            &quot;minutes&quot;: 42, # Minutes of an hour. Must be greater than or equal to 0 and less than or equal to 59.
            &quot;nanos&quot;: 42, # Fractions of seconds, in nanoseconds. Must be greater than or equal to 0 and less than or equal to 999,999,999.
            &quot;seconds&quot;: 42, # Seconds of a minute. Must be greater than or equal to 0 and typically must be less than or equal to 59. An API may allow the value 60 if it allows leap-seconds.
          },
          &quot;startDay&quot;: &quot;A String&quot;, # Output only. The day on which the interval starts.
          &quot;startTime&quot;: { # Represents a time of day. The date and time zone are either not significant or are specified elsewhere. An API may choose to allow leap seconds. Related types are google.type.Date and `google.protobuf.Timestamp`. # Output only. The time on the start day at which the interval starts.
            &quot;hours&quot;: 42, # Hours of a day in 24 hour format. Must be greater than or equal to 0 and typically must be less than or equal to 23. An API may choose to allow the value &quot;24:00:00&quot; for scenarios like business closing time.
            &quot;minutes&quot;: 42, # Minutes of an hour. Must be greater than or equal to 0 and less than or equal to 59.
            &quot;nanos&quot;: 42, # Fractions of seconds, in nanoseconds. Must be greater than or equal to 0 and less than or equal to 999,999,999.
            &quot;seconds&quot;: 42, # Seconds of a minute. Must be greater than or equal to 0 and typically must be less than or equal to 59. An API may allow the value 60 if it allows leap-seconds.
          },
        },
      ],
      &quot;minHoursDay&quot;: 42, # Output only. Minimum number of hours must be allotted for the upgrade activities for each selected day. This is a minimum; the upgrade schedule can allot more hours for the given day.
      &quot;minHoursWeek&quot;: 42, # Output only. The minimum number of weekly hours must be allotted for the upgrade activities. This is just a minimum; the schedule can assign more weekly hours.
      &quot;rescheduleDateRange&quot;: { # Represents a time interval, encoded as a Timestamp start (inclusive) and a Timestamp end (exclusive). The start must be less than or equal to the end. When the start equals the end, the interval is empty (matches no time). When both start and end are unspecified, the interval matches any time. # Output only. Output Only. The user can only reschedule an upgrade that starts within this range.
        &quot;endTime&quot;: &quot;A String&quot;, # Optional. Exclusive end of the interval. If specified, a Timestamp matching this interval will have to be before the end.
        &quot;startTime&quot;: &quot;A String&quot;, # Optional. Inclusive start of the interval. If specified, a Timestamp matching this interval will have to be the same or after the start.
      },
    },
    &quot;editWindow&quot;: { # Represents a time interval, encoded as a Timestamp start (inclusive) and a Timestamp end (exclusive). The start must be less than or equal to the end. When the start equals the end, the interval is empty (matches no time). When both start and end are unspecified, the interval matches any time. # Output only. Output Only. The schedule is open for edits during this time interval or window.
      &quot;endTime&quot;: &quot;A String&quot;, # Optional. Exclusive end of the interval. If specified, a Timestamp matching this interval will have to be before the end.
      &quot;startTime&quot;: &quot;A String&quot;, # Optional. Inclusive start of the interval. If specified, a Timestamp matching this interval will have to be the same or after the start.
    },
    &quot;lastEditor&quot;: &quot;A String&quot;, # Output only. Output Only. Indicates who most recently edited the upgrade schedule. The value is updated whenever the upgrade is rescheduled.
    &quot;startTime&quot;: &quot;A String&quot;, # Required. The scheduled start time for the upgrade.
    &quot;weeklyWindows&quot;: [ # Required. Weekly time windows for upgrade activities. The server performs upgrade activities during these time windows to minimize disruptions.
      { # Represents the time window to perform upgrade activities.
        &quot;dayOfWeek&quot;: &quot;A String&quot;, # Required. Day of the week for this window.
        &quot;duration&quot;: &quot;A String&quot;, # Required. The duration of the window. The max allowed duration for any window is 24 hours.
        &quot;startTime&quot;: { # Represents a time of day. The date and time zone are either not significant or are specified elsewhere. An API may choose to allow leap seconds. Related types are google.type.Date and `google.protobuf.Timestamp`. # Required. Time in UTC when the window starts.
          &quot;hours&quot;: 42, # Hours of a day in 24 hour format. Must be greater than or equal to 0 and typically must be less than or equal to 23. An API may choose to allow the value &quot;24:00:00&quot; for scenarios like business closing time.
          &quot;minutes&quot;: 42, # Minutes of an hour. Must be greater than or equal to 0 and less than or equal to 59.
          &quot;nanos&quot;: 42, # Fractions of seconds, in nanoseconds. Must be greater than or equal to 0 and less than or equal to 999,999,999.
          &quot;seconds&quot;: 42, # Seconds of a minute. Must be greater than or equal to 0 and typically must be less than or equal to 59. An API may allow the value 60 if it allows leap-seconds.
        },
      },
    ],
  },
  &quot;startVersion&quot;: &quot;A String&quot;, # Output only. Output Only. The start version
  &quot;state&quot;: &quot;A String&quot;, # Output only. The current state of the upgrade.
  &quot;targetVersion&quot;: &quot;A String&quot;, # Output only. Output Only. The target version
  &quot;type&quot;: &quot;A String&quot;, # Output only. Output Only. The type of upgrade.
  &quot;uid&quot;: &quot;A String&quot;, # Output only. System-generated unique identifier for the resource.
  &quot;updateTime&quot;: &quot;A String&quot;, # Output only. Output Only. Last update time of this resource.
  &quot;version&quot;: &quot;A String&quot;, # Output only.
}</pre>
</div>

<div class="method">
    <code class="details" id="list">list(parent, filter=None, orderBy=None, pageSize=None, pageToken=None, x__xgafv=None)</code>
  <pre>Lists past, ongoing and upcoming `Upgrades` for the given private cloud.

Args:
  parent: string, Required. Query a list of `Upgrades` for the given private cloud resource name. Resource names are schemeless URIs that follow the conventions in https://cloud.google.com/apis/design/resource_names. For example: `projects/my-project/locations/us-west1-a/privateClouds/my-cloud` (required)
  filter: string, A filter expression that matches resources returned in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be `=`, `!=`, `&gt;`, or `&lt;`. For example, if you are filtering a list of upgrades, you can exclude the ones named `example-upgrade1` by specifying `name != &quot;example-upgrade1&quot;`. You can also filter nested fields. To filter on multiple expressions, provide each separate expression within parentheses. For example: ``` (name = &quot;example-upgrade&quot;) (createTime &gt; &quot;2021-04-12T08:15:10.40Z&quot;) ``` By default, each expression is an `AND` expression. However, you can include `AND` and `OR` expressions explicitly. For example: ``` (name = &quot;upgrade-1&quot;) AND (createTime &gt; &quot;2021-04-12T08:15:10.40Z&quot;) OR (name = &quot;upgrade-2&quot;) ```
  orderBy: string, Sorts list results by a certain order. By default, returned results are ordered by `name` in ascending order. You can also sort results in descending order based on the `name` value using `orderBy=&quot;name desc&quot;`. Currently, only ordering by `name` is supported.
  pageSize: integer, The maximum number of `Upgrades` to return in one page. The service may return fewer resources than this value. The maximum value is coerced to 1000. The default value of this field is 500.
  pageToken: string, A page token, received from a previous `ListUpgrades` call. Provide this to retrieve the subsequent page. When paginating, all other parameters provided to `ListUpgrades` must match the call that provided the page token.
  x__xgafv: string, V1 error format.
    Allowed values
      1 - v1 error format
      2 - v2 error format

Returns:
  An object of the form:

    { # Response message for VmwareEngine.ListUpgrades.
  &quot;nextPageToken&quot;: &quot;A String&quot;, # A token, which can be sent as `page_token` to retrieve the next page. If this field is omitted, there are no subsequent pages.
  &quot;unreachable&quot;: [ # List of unreachable resources.
    &quot;A String&quot;,
  ],
  &quot;upgrades&quot;: [ # A list of `Upgrades`.
    { # Describes Private cloud Upgrade.
      &quot;componentUpgrades&quot;: [ # Output only. Output Only. The list of component upgrades.
        { # Per component upgrade resource
          &quot;componentType&quot;: &quot;A String&quot;, # Output only. Type of component
          &quot;state&quot;: &quot;A String&quot;, # Output only. Component&#x27;s upgrade state.
        },
      ],
      &quot;createTime&quot;: &quot;A String&quot;, # Output only. Output Only. Creation time of this resource.
      &quot;description&quot;: &quot;A String&quot;, # Output only. Output Only. The description of the upgrade. This is used to provide additional information about the private cloud upgrade, such as the upgrade&#x27;s purpose, the changes included in the upgrade, or any other relevant information about the upgrade.
      &quot;endTime&quot;: &quot;A String&quot;, # Output only. Output Only. End time of the upgrade.
      &quot;estimatedDuration&quot;: &quot;A String&quot;, # Output only. Output Only. The estimated total duration of the upgrade. This information can be used to plan or schedule upgrades to minimize disruptions. Please note that the estimated duration is only an estimate. The actual upgrade duration may vary.
      &quot;etag&quot;: &quot;A String&quot;, # The etag for the upgrade resource. If this is provided on update, it must match the server&#x27;s etag.
      &quot;name&quot;: &quot;A String&quot;, # Output only. Identifier. The resource name of the private cloud `Upgrade`. Resource names are schemeless URIs that follow the conventions in https://cloud.google.com/apis/design/resource_names. For example: `projects/my-project/locations/us-west1-a/privateClouds/my-cloud/upgrades/my-upgrade`
      &quot;schedule&quot;: { # Schedule for the upgrade. # Schedule details for the upgrade.
        &quot;constraints&quot;: { # Constraints to be applied while editing a schedule. These constraints ensure that `Upgrade` specific requirements are met. # Output only. Output Only. Constraints applied to the schedule. These constraints should be applicable at the time of any rescheduling.
          &quot;disallowedIntervals&quot;: [ # Output only. Output Only. A list of intervals in which maintenance windows are not allowed. Any time window that overlaps with any of these intervals will be considered invalid.
            { # Represents a time interval, spanning across days of the week. Until local timezones are supported, this interval is in UTC.
              &quot;endDay&quot;: &quot;A String&quot;, # Output only. The day on which the interval ends. Can be same as start day.
              &quot;endTime&quot;: { # Represents a time of day. The date and time zone are either not significant or are specified elsewhere. An API may choose to allow leap seconds. Related types are google.type.Date and `google.protobuf.Timestamp`. # Output only. The time on the end day at which the interval ends.
                &quot;hours&quot;: 42, # Hours of a day in 24 hour format. Must be greater than or equal to 0 and typically must be less than or equal to 23. An API may choose to allow the value &quot;24:00:00&quot; for scenarios like business closing time.
                &quot;minutes&quot;: 42, # Minutes of an hour. Must be greater than or equal to 0 and less than or equal to 59.
                &quot;nanos&quot;: 42, # Fractions of seconds, in nanoseconds. Must be greater than or equal to 0 and less than or equal to 999,999,999.
                &quot;seconds&quot;: 42, # Seconds of a minute. Must be greater than or equal to 0 and typically must be less than or equal to 59. An API may allow the value 60 if it allows leap-seconds.
              },
              &quot;startDay&quot;: &quot;A String&quot;, # Output only. The day on which the interval starts.
              &quot;startTime&quot;: { # Represents a time of day. The date and time zone are either not significant or are specified elsewhere. An API may choose to allow leap seconds. Related types are google.type.Date and `google.protobuf.Timestamp`. # Output only. The time on the start day at which the interval starts.
                &quot;hours&quot;: 42, # Hours of a day in 24 hour format. Must be greater than or equal to 0 and typically must be less than or equal to 23. An API may choose to allow the value &quot;24:00:00&quot; for scenarios like business closing time.
                &quot;minutes&quot;: 42, # Minutes of an hour. Must be greater than or equal to 0 and less than or equal to 59.
                &quot;nanos&quot;: 42, # Fractions of seconds, in nanoseconds. Must be greater than or equal to 0 and less than or equal to 999,999,999.
                &quot;seconds&quot;: 42, # Seconds of a minute. Must be greater than or equal to 0 and typically must be less than or equal to 59. An API may allow the value 60 if it allows leap-seconds.
              },
            },
          ],
          &quot;minHoursDay&quot;: 42, # Output only. Minimum number of hours must be allotted for the upgrade activities for each selected day. This is a minimum; the upgrade schedule can allot more hours for the given day.
          &quot;minHoursWeek&quot;: 42, # Output only. The minimum number of weekly hours must be allotted for the upgrade activities. This is just a minimum; the schedule can assign more weekly hours.
          &quot;rescheduleDateRange&quot;: { # Represents a time interval, encoded as a Timestamp start (inclusive) and a Timestamp end (exclusive). The start must be less than or equal to the end. When the start equals the end, the interval is empty (matches no time). When both start and end are unspecified, the interval matches any time. # Output only. Output Only. The user can only reschedule an upgrade that starts within this range.
            &quot;endTime&quot;: &quot;A String&quot;, # Optional. Exclusive end of the interval. If specified, a Timestamp matching this interval will have to be before the end.
            &quot;startTime&quot;: &quot;A String&quot;, # Optional. Inclusive start of the interval. If specified, a Timestamp matching this interval will have to be the same or after the start.
          },
        },
        &quot;editWindow&quot;: { # Represents a time interval, encoded as a Timestamp start (inclusive) and a Timestamp end (exclusive). The start must be less than or equal to the end. When the start equals the end, the interval is empty (matches no time). When both start and end are unspecified, the interval matches any time. # Output only. Output Only. The schedule is open for edits during this time interval or window.
          &quot;endTime&quot;: &quot;A String&quot;, # Optional. Exclusive end of the interval. If specified, a Timestamp matching this interval will have to be before the end.
          &quot;startTime&quot;: &quot;A String&quot;, # Optional. Inclusive start of the interval. If specified, a Timestamp matching this interval will have to be the same or after the start.
        },
        &quot;lastEditor&quot;: &quot;A String&quot;, # Output only. Output Only. Indicates who most recently edited the upgrade schedule. The value is updated whenever the upgrade is rescheduled.
        &quot;startTime&quot;: &quot;A String&quot;, # Required. The scheduled start time for the upgrade.
        &quot;weeklyWindows&quot;: [ # Required. Weekly time windows for upgrade activities. The server performs upgrade activities during these time windows to minimize disruptions.
          { # Represents the time window to perform upgrade activities.
            &quot;dayOfWeek&quot;: &quot;A String&quot;, # Required. Day of the week for this window.
            &quot;duration&quot;: &quot;A String&quot;, # Required. The duration of the window. The max allowed duration for any window is 24 hours.
            &quot;startTime&quot;: { # Represents a time of day. The date and time zone are either not significant or are specified elsewhere. An API may choose to allow leap seconds. Related types are google.type.Date and `google.protobuf.Timestamp`. # Required. Time in UTC when the window starts.
              &quot;hours&quot;: 42, # Hours of a day in 24 hour format. Must be greater than or equal to 0 and typically must be less than or equal to 23. An API may choose to allow the value &quot;24:00:00&quot; for scenarios like business closing time.
              &quot;minutes&quot;: 42, # Minutes of an hour. Must be greater than or equal to 0 and less than or equal to 59.
              &quot;nanos&quot;: 42, # Fractions of seconds, in nanoseconds. Must be greater than or equal to 0 and less than or equal to 999,999,999.
              &quot;seconds&quot;: 42, # Seconds of a minute. Must be greater than or equal to 0 and typically must be less than or equal to 59. An API may allow the value 60 if it allows leap-seconds.
            },
          },
        ],
      },
      &quot;startVersion&quot;: &quot;A String&quot;, # Output only. Output Only. The start version
      &quot;state&quot;: &quot;A String&quot;, # Output only. The current state of the upgrade.
      &quot;targetVersion&quot;: &quot;A String&quot;, # Output only. Output Only. The target version
      &quot;type&quot;: &quot;A String&quot;, # Output only. Output Only. The type of upgrade.
      &quot;uid&quot;: &quot;A String&quot;, # Output only. System-generated unique identifier for the resource.
      &quot;updateTime&quot;: &quot;A String&quot;, # Output only. Output Only. Last update time of this resource.
      &quot;version&quot;: &quot;A String&quot;, # Output only.
    },
  ],
}</pre>
</div>

<div class="method">
    <code class="details" id="list_next">list_next()</code>
  <pre>Retrieves the next page of results.

        Args:
          previous_request: The request for the previous page. (required)
          previous_response: The response from the request for the previous page. (required)

        Returns:
          A request object that you can call &#x27;execute()&#x27; on to request the next
          page. Returns None if there are no more items in the collection.
        </pre>
</div>

<div class="method">
    <code class="details" id="patch">patch(name, body=None, requestId=None, updateMask=None, x__xgafv=None)</code>
  <pre>Update the private cloud `Upgrade` resource. Only `schedule` field can updated. The schedule can only be updated when the upgrade has not started and schedule edit window is open. Only fields specified in `update_mask` are considered.

Args:
  name: string, Output only. Identifier. The resource name of the private cloud `Upgrade`. Resource names are schemeless URIs that follow the conventions in https://cloud.google.com/apis/design/resource_names. For example: `projects/my-project/locations/us-west1-a/privateClouds/my-cloud/upgrades/my-upgrade` (required)
  body: object, The request body.
    The object takes the form of:

{ # Describes Private cloud Upgrade.
  &quot;componentUpgrades&quot;: [ # Output only. Output Only. The list of component upgrades.
    { # Per component upgrade resource
      &quot;componentType&quot;: &quot;A String&quot;, # Output only. Type of component
      &quot;state&quot;: &quot;A String&quot;, # Output only. Component&#x27;s upgrade state.
    },
  ],
  &quot;createTime&quot;: &quot;A String&quot;, # Output only. Output Only. Creation time of this resource.
  &quot;description&quot;: &quot;A String&quot;, # Output only. Output Only. The description of the upgrade. This is used to provide additional information about the private cloud upgrade, such as the upgrade&#x27;s purpose, the changes included in the upgrade, or any other relevant information about the upgrade.
  &quot;endTime&quot;: &quot;A String&quot;, # Output only. Output Only. End time of the upgrade.
  &quot;estimatedDuration&quot;: &quot;A String&quot;, # Output only. Output Only. The estimated total duration of the upgrade. This information can be used to plan or schedule upgrades to minimize disruptions. Please note that the estimated duration is only an estimate. The actual upgrade duration may vary.
  &quot;etag&quot;: &quot;A String&quot;, # The etag for the upgrade resource. If this is provided on update, it must match the server&#x27;s etag.
  &quot;name&quot;: &quot;A String&quot;, # Output only. Identifier. The resource name of the private cloud `Upgrade`. Resource names are schemeless URIs that follow the conventions in https://cloud.google.com/apis/design/resource_names. For example: `projects/my-project/locations/us-west1-a/privateClouds/my-cloud/upgrades/my-upgrade`
  &quot;schedule&quot;: { # Schedule for the upgrade. # Schedule details for the upgrade.
    &quot;constraints&quot;: { # Constraints to be applied while editing a schedule. These constraints ensure that `Upgrade` specific requirements are met. # Output only. Output Only. Constraints applied to the schedule. These constraints should be applicable at the time of any rescheduling.
      &quot;disallowedIntervals&quot;: [ # Output only. Output Only. A list of intervals in which maintenance windows are not allowed. Any time window that overlaps with any of these intervals will be considered invalid.
        { # Represents a time interval, spanning across days of the week. Until local timezones are supported, this interval is in UTC.
          &quot;endDay&quot;: &quot;A String&quot;, # Output only. The day on which the interval ends. Can be same as start day.
          &quot;endTime&quot;: { # Represents a time of day. The date and time zone are either not significant or are specified elsewhere. An API may choose to allow leap seconds. Related types are google.type.Date and `google.protobuf.Timestamp`. # Output only. The time on the end day at which the interval ends.
            &quot;hours&quot;: 42, # Hours of a day in 24 hour format. Must be greater than or equal to 0 and typically must be less than or equal to 23. An API may choose to allow the value &quot;24:00:00&quot; for scenarios like business closing time.
            &quot;minutes&quot;: 42, # Minutes of an hour. Must be greater than or equal to 0 and less than or equal to 59.
            &quot;nanos&quot;: 42, # Fractions of seconds, in nanoseconds. Must be greater than or equal to 0 and less than or equal to 999,999,999.
            &quot;seconds&quot;: 42, # Seconds of a minute. Must be greater than or equal to 0 and typically must be less than or equal to 59. An API may allow the value 60 if it allows leap-seconds.
          },
          &quot;startDay&quot;: &quot;A String&quot;, # Output only. The day on which the interval starts.
          &quot;startTime&quot;: { # Represents a time of day. The date and time zone are either not significant or are specified elsewhere. An API may choose to allow leap seconds. Related types are google.type.Date and `google.protobuf.Timestamp`. # Output only. The time on the start day at which the interval starts.
            &quot;hours&quot;: 42, # Hours of a day in 24 hour format. Must be greater than or equal to 0 and typically must be less than or equal to 23. An API may choose to allow the value &quot;24:00:00&quot; for scenarios like business closing time.
            &quot;minutes&quot;: 42, # Minutes of an hour. Must be greater than or equal to 0 and less than or equal to 59.
            &quot;nanos&quot;: 42, # Fractions of seconds, in nanoseconds. Must be greater than or equal to 0 and less than or equal to 999,999,999.
            &quot;seconds&quot;: 42, # Seconds of a minute. Must be greater than or equal to 0 and typically must be less than or equal to 59. An API may allow the value 60 if it allows leap-seconds.
          },
        },
      ],
      &quot;minHoursDay&quot;: 42, # Output only. Minimum number of hours must be allotted for the upgrade activities for each selected day. This is a minimum; the upgrade schedule can allot more hours for the given day.
      &quot;minHoursWeek&quot;: 42, # Output only. The minimum number of weekly hours must be allotted for the upgrade activities. This is just a minimum; the schedule can assign more weekly hours.
      &quot;rescheduleDateRange&quot;: { # Represents a time interval, encoded as a Timestamp start (inclusive) and a Timestamp end (exclusive). The start must be less than or equal to the end. When the start equals the end, the interval is empty (matches no time). When both start and end are unspecified, the interval matches any time. # Output only. Output Only. The user can only reschedule an upgrade that starts within this range.
        &quot;endTime&quot;: &quot;A String&quot;, # Optional. Exclusive end of the interval. If specified, a Timestamp matching this interval will have to be before the end.
        &quot;startTime&quot;: &quot;A String&quot;, # Optional. Inclusive start of the interval. If specified, a Timestamp matching this interval will have to be the same or after the start.
      },
    },
    &quot;editWindow&quot;: { # Represents a time interval, encoded as a Timestamp start (inclusive) and a Timestamp end (exclusive). The start must be less than or equal to the end. When the start equals the end, the interval is empty (matches no time). When both start and end are unspecified, the interval matches any time. # Output only. Output Only. The schedule is open for edits during this time interval or window.
      &quot;endTime&quot;: &quot;A String&quot;, # Optional. Exclusive end of the interval. If specified, a Timestamp matching this interval will have to be before the end.
      &quot;startTime&quot;: &quot;A String&quot;, # Optional. Inclusive start of the interval. If specified, a Timestamp matching this interval will have to be the same or after the start.
    },
    &quot;lastEditor&quot;: &quot;A String&quot;, # Output only. Output Only. Indicates who most recently edited the upgrade schedule. The value is updated whenever the upgrade is rescheduled.
    &quot;startTime&quot;: &quot;A String&quot;, # Required. The scheduled start time for the upgrade.
    &quot;weeklyWindows&quot;: [ # Required. Weekly time windows for upgrade activities. The server performs upgrade activities during these time windows to minimize disruptions.
      { # Represents the time window to perform upgrade activities.
        &quot;dayOfWeek&quot;: &quot;A String&quot;, # Required. Day of the week for this window.
        &quot;duration&quot;: &quot;A String&quot;, # Required. The duration of the window. The max allowed duration for any window is 24 hours.
        &quot;startTime&quot;: { # Represents a time of day. The date and time zone are either not significant or are specified elsewhere. An API may choose to allow leap seconds. Related types are google.type.Date and `google.protobuf.Timestamp`. # Required. Time in UTC when the window starts.
          &quot;hours&quot;: 42, # Hours of a day in 24 hour format. Must be greater than or equal to 0 and typically must be less than or equal to 23. An API may choose to allow the value &quot;24:00:00&quot; for scenarios like business closing time.
          &quot;minutes&quot;: 42, # Minutes of an hour. Must be greater than or equal to 0 and less than or equal to 59.
          &quot;nanos&quot;: 42, # Fractions of seconds, in nanoseconds. Must be greater than or equal to 0 and less than or equal to 999,999,999.
          &quot;seconds&quot;: 42, # Seconds of a minute. Must be greater than or equal to 0 and typically must be less than or equal to 59. An API may allow the value 60 if it allows leap-seconds.
        },
      },
    ],
  },
  &quot;startVersion&quot;: &quot;A String&quot;, # Output only. Output Only. The start version
  &quot;state&quot;: &quot;A String&quot;, # Output only. The current state of the upgrade.
  &quot;targetVersion&quot;: &quot;A String&quot;, # Output only. Output Only. The target version
  &quot;type&quot;: &quot;A String&quot;, # Output only. Output Only. The type of upgrade.
  &quot;uid&quot;: &quot;A String&quot;, # Output only. System-generated unique identifier for the resource.
  &quot;updateTime&quot;: &quot;A String&quot;, # Output only. Output Only. Last update time of this resource.
  &quot;version&quot;: &quot;A String&quot;, # Output only.
}

  requestId: string, Optional. A request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. The server guarantees that a request doesn&#x27;t result in creation of duplicate commitments for at least 60 minutes. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).
  updateMask: string, Required. Field mask is used to specify the fields to be overwritten in the `Upgrade` resource by the update. The fields specified in the `update_mask` are relative to the resource, not the full request. A field will be overwritten if it is in the mask. If the user does not provide a mask then all fields will be overwritten.
  x__xgafv: string, V1 error format.
    Allowed values
      1 - v1 error format
      2 - v2 error format

Returns:
  An object of the form:

    { # This resource represents a long-running operation that is the result of a network API call.
  &quot;done&quot;: True or False, # If the value is `false`, it means the operation is still in progress. If `true`, the operation is completed, and either `error` or `response` is available.
  &quot;error&quot;: { # The `Status` type defines a logical error model that is suitable for different programming environments, including REST APIs and RPC APIs. It is used by [gRPC](https://github.com/grpc). Each `Status` message contains three pieces of data: error code, error message, and error details. You can find out more about this error model and how to work with it in the [API Design Guide](https://cloud.google.com/apis/design/errors). # The error result of the operation in case of failure or cancellation.
    &quot;code&quot;: 42, # The status code, which should be an enum value of google.rpc.Code.
    &quot;details&quot;: [ # A list of messages that carry the error details. There is a common set of message types for APIs to use.
      {
        &quot;a_key&quot;: &quot;&quot;, # Properties of the object. Contains field @type with type URL.
      },
    ],
    &quot;message&quot;: &quot;A String&quot;, # A developer-facing error message, which should be in English. Any user-facing error message should be localized and sent in the google.rpc.Status.details field, or localized by the client.
  },
  &quot;metadata&quot;: { # Service-specific metadata associated with the operation. It typically contains progress information and common metadata such as create time. Some services might not provide such metadata. Any method that returns a long-running operation should document the metadata type, if any.
    &quot;a_key&quot;: &quot;&quot;, # Properties of the object. Contains field @type with type URL.
  },
  &quot;name&quot;: &quot;A String&quot;, # The server-assigned name, which is only unique within the same service that originally returns it. If you use the default HTTP mapping, the `name` should be a resource name ending with `operations/{unique_id}`.
  &quot;response&quot;: { # The normal, successful response of the operation. If the original method returns no data on success, such as `Delete`, the response is `google.protobuf.Empty`. If the original method is standard `Get`/`Create`/`Update`, the response should be the resource. For other methods, the response should have the type `XxxResponse`, where `Xxx` is the original method name. For example, if the original method name is `TakeSnapshot()`, the inferred response type is `TakeSnapshotResponse`.
    &quot;a_key&quot;: &quot;&quot;, # Properties of the object. Contains field @type with type URL.
  },
}</pre>
</div>

</body></html>